package com.jyw.business.comp.domain.vo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.jyw.business.comp.domain.CompScheduleShift;
import com.jyw.business.comp.domain.CompScheduleShiftTime;
import com.jyw.common.annotation.Excel;
import com.jyw.common.utils.bean.BeanUtils;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.List;
import java.util.stream.Collectors;

@Data
@ApiModel("班次查询集合")
@NoArgsConstructor
public class CompScheduleShiftQueryVo {


    /** 主键 */
    @ApiModelProperty("主键")
    private Long id;

    /** 班次名称 */
    @ApiModelProperty("班次名称")
    private String name;

    /** 排班日类型集合 0:工作日，1，周末，2，节假日 */
    @ApiModelProperty("排班日类型集合 0:工作日，1，周末，2，节假日")
    private String holidayType;

    /** 班次颜色 */
    @ApiModelProperty("班次颜色")
    private String color;

    /** 值班费用 */
    @ApiModelProperty("值班费用")
    private BigDecimal price;

    @ApiModelProperty("值班时间")
    private List<CompScheduleShiftTime> shiftTimes;

    public CompScheduleShiftQueryVo(CompScheduleShift data, List<CompScheduleShiftTime> shiftTimeList) {
        BeanUtils.copyProperties(data,this);
        setShiftTimes(shiftTimeList.stream().filter(time->data.getId().equals(time.getShiftId())).collect(Collectors.toList()));
    }
}
